/**
 * Copyright &copy; 2015-2020 <a href="http://www.easyhis.com/">easyhis</a> All rights reserved.
 */
package com.easy.dfcapi.entity;

import javax.validation.constraints.NotNull;
import com.easy.modules.sys.entity.User;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.math.BigDecimal;

import com.easy.core.persistence.DataEntity;
import com.easy.common.utils.excel.annotation.ExcelField;

/**
 * 厂家缴费Entity
 * @author waylen chi
 * @version 2018-01-17
 */
public class ApiPayLog extends DataEntity<ApiPayLog> {
	
	private static final long serialVersionUID = 1L;
	private String id;		// pay_id
	private Integer payId;		// pay_id
	private Integer storeId;		// 厂家ID【冗余】
	private User user;		// 用户ID
	private Integer typeId;		// 费用类型ID
	private Integer activityId;		// 活动id
	private Integer orderId;		// 订单ID
	private Date payTime;		// 缴费时间
	private String summary;		// 摘要
	private BigDecimal amnt;		// 缴费金额
	private Integer payMode;		// 缴费方式
	private String remark;		// 备注
	
	public ApiPayLog() {
		super();
	}

	public ApiPayLog(String id){
		this.id = id;
	}

	@NotNull(message="pay_id不能为空")
	@ExcelField(title="pay_id", align=2, sort=0)
	public Integer getPayId() {
		return payId;
	}

	public void setPayId(Integer payId) {
		this.payId = payId;
	}
	
	@ExcelField(title="厂家ID【冗余】", align=2, sort=1)
	public Integer getStoreId() {
		return storeId;
	}

	public void setStoreId(Integer storeId) {
		this.storeId = storeId;
	}
	
	@NotNull(message="用户ID不能为空")
	@ExcelField(title="用户ID", fieldType=User.class, value="u.userName", align=2, sort=2)
	public User getUser() {
		return user;
	}

	public void setUser(User user) {
		this.user = user;
	}
	
	@NotNull(message="费用类型ID不能为空")
	@ExcelField(title="费用类型ID", align=2, sort=3)
	public Integer getTypeId() {
		return typeId;
	}

	public void setTypeId(Integer typeId) {
		this.typeId = typeId;
	}
	
	@ExcelField(title="活动id", align=2, sort=4)
	public Integer getActivityId() {
		return activityId;
	}

	public void setActivityId(Integer activityId) {
		this.activityId = activityId;
	}
	
	@ExcelField(title="订单ID", align=2, sort=5)
	public Integer getOrderId() {
		return orderId;
	}

	public void setOrderId(Integer orderId) {
		this.orderId = orderId;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="缴费时间", align=2, sort=6)
	public Date getPayTime() {
		return payTime;
	}

	public void setPayTime(Date payTime) {
		this.payTime = payTime;
	}
	
	@ExcelField(title="摘要", align=2, sort=7)
	public String getSummary() {
		return summary;
	}

	public void setSummary(String summary) {
		this.summary = summary;
	}
	
	@ExcelField(title="缴费金额", align=2, sort=8)
	public BigDecimal getAmnt() {
		return amnt;
	}

	public void setAmnt(BigDecimal amnt) {
		this.amnt = amnt;
	}
	
	@ExcelField(title="缴费方式", align=2, sort=9)
	public Integer getPayMode() {
		return payMode;
	}

	public void setPayMode(Integer payMode) {
		this.payMode = payMode;
	}
	
	@ExcelField(title="备注", align=2, sort=10)
	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}
	
}